<head>
    <link rel="stylesheet" href="/lib/layui-v2.5.5/css/layui.css" media="all">
    <link rel="stylesheet" href="/lib/jq-module/zyupload/zyupload-1.0.0.min.css" media="all">
    <link rel="stylesheet" href="/css/public.css" media="all">
</head>
<div class="layuimini-main">
    <div class="layui-form layuimini-form">
        <div class="layui-form-item">
            <div class="layui-inline">
                <label class="layui-form-label required">名称</label>
                <div class="layui-input-block">
                    <input type="text" id="executableName" name="executableName" lay-verify="required"
                           lay-reqtext="名称不能为空"
                           placeholder="请输入名称"
                           value="" class="layui-input">
                </div>
            </div>

            <div class="layui-inline">
                <label class="layui-form-label required">版本</label>
                <div class="layui-input-block">
                    <input type="text" name="executableVersion" lay-verify="required"
                           lay-reqtext="版本不能为空"
                           placeholder="请输入版本"
                           value="" class="layui-input">
                </div>
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label required">类型</label>
            <div class="layui-input-block">
                <input type="radio" name="executableType" value="0" title="静态文件" checked="">
                <input type="radio" name="executableType" value="1" title="jar文件">
            </div>
        </div>


        <div class="layui-form-item">
            <label class="layui-form-label required">原名称</label>
            <div class="layui-input-block">
                <input type="text" id="originalFileName" lay-verify="required" name="originalFileName" disabled value=""
                       class="layui-input">
            </div>
        </div>

        <div id="zyupload" class="zyupload"></div>

        <div class="layui-form-item layui-form-text">
            <label class="layui-form-label required">备注</label>
            <div class="layui-input-block">
                <textarea name="executableNote" placeholder="请输入内容" lay-reqtext="备注不能为空" lay-verify="required"
                          class="layui-textarea"></textarea>
            </div>
        </div>


        <input type="text" id="fileId" name="fileId" hidden>


        <div class="layui-form-item">
            <div class="layui-input-block">
                <button class="layui-btn layui-btn-normal" lay-submit lay-filter="saveBtn">确认保存</button>
            </div>
        </div>
    </div>
</div>

<script src="/lib/jquery-3.4.1/jquery-3.4.1.min.js" charset="utf-8"></script>

<script src="/lib/jq-module/zyupload/zyupload-1.0.0.min.js" charset="utf-8"></script>
<script>
    layui.use(['form', 'table', 'common'], function () {
        var form = layui.form,
            layer = layui.layer,
            table = layui.table,
            common = layui.common;
        $ = layui.$;

        /**
         * 初始化表单，要加上，不然刷新部分组件可能会不加载
         */
        form.render();

        // 当前弹出层，防止ID被覆盖
        var parentIndex = layer.index;

        //监听提交
        form.on('submit(saveBtn)', function (data) {
            common.ajaxPost('/api/executable/file/add',
                JSON.stringify(data.field)
                , function (_data) {
                    if (_data.resCode === '0000') {
                        layer.close(parentIndex);
                        layer.msg(_data.resDesc, {icon: 6});
                        table.reload('currentTableId');
                    } else {
                        layer.msg(_data.resDesc, {icon: 7});
                    }
                }
            )
            return false;
        });
        $("#zyupload").zyUpload({
            width: "650px",                 // 宽度
            height: "400px",                 // 宽度
            itemWidth: "140px",                 // 文件项的宽度
            itemHeight: "115px",                 // 文件项的高度
            url: "/api/file/upload?fileType=1",  // 上传文件的路径
            fileType: ["zip", "jar"],// 上传文件的类型
            fileSize: 51200000,                // 上传文件的大小
            multiple: false,                    // 是否可以多个文件上传
            dragDrop: true,                    // 是否可以拖动上传文件
            tailor: false,                    // 是否可以裁剪图片
            del: true,                    // 是否可以删除文件
            finishDel: false,  				  // 是否在上传文件完成后删除预览
            /* 外部获得的回调接口 */
            onSelect: function (selectFiles, allFiles) {    // 选择文件的回调方法  selectFile:当前选中的文件  allFiles:还没上传的全部文件
                // console.info("当前选择了以下文件：");
                // console.info(selectFiles);
            },
            onDelete: function (file, files) {              // 删除一个文件的回调方法 file:当前删除的文件  files:删除之后的文件
                // console.info("当前删除了此文件：");
                // console.info(file.name);
            },
            onSuccess: function (file, response) {          // 文件上传成功的回调方法
                var _data = JSON.parse(response);
                if (_data.resCode === '0000') {
                    $('#originalFileName').val(_data.data.originalFilename);
                    $('#fileId').val(_data.data.id);
                } else {
                    layer.msg(_data.resDesc, {icon: 7});
                }
            },
            onFailure: function (file, response) {          // 文件上传失败的回调方法
                // console.info("此文件上传失败：");
                // console.info(file.name);
            },
            onComplete: function (response) {           	  // 上传完成的回调方法
                // console.info("文件上传完成");
                // console.info(response);
            }
        });
    });
</script>

